package eu.scillman.net.udp;

import java.net.DatagramSocket;
import java.net.SocketException;

import eu.scillman.net.IClient;
import eu.scillman.net.INetEngine;
import eu.scillman.net.Member;

public class ClientEngine extends ConnectionBase implements INetEngine, IClient {
	/**
	 * The remote device to send the data too.
	 */
	@SuppressWarnings("unused")
	private Member remoteDevice;
	
	public ClientEngine() {
		// Do something...
	}
	
	/**
	 * {@inheritDoc}
	 */
	@Override
	protected DatagramSocket getSocket() throws SocketException {
		return new DatagramSocket();
	}

	/**
	 * {@inheritDoc}
	 */
	@Override
	public void connect(Member remoteDevice) {
		this.remoteDevice = remoteDevice;
		// TODO: Send a verification message!
	}
	
	/**
	 * {@inheritDoc}
	 */
	@Override
	public void disconnect() {
	}
	
	/**
	 * {@inheritDoc}
	 */
	@Override
	public boolean hold() {
		// TODO Auto-generated method stub
		return false;
	}
	
	/**
	 * {@inheritDoc}
	 */
	@Override
	public byte[] receive() {
		return null;
	}

	/**
	 * {@inheritDoc}
	 */
	@Override
	public void send(String data) {
		// TODO Auto-generated method stub
	}

	/**
	 * {@inheritDoc}
	 */
	@Override
	public void run() {
		// TODO Auto-generated method stub
	}

	@Override
	public void abort() {
		// TODO Auto-generated method stub
	}
}
